翻訳と辞書
Words near each other
・ Cystoagaricus
・ Cystoathyrium
・ Cystobacter
・ Cystobacterineae
・ Cystobasidiomycetes
・ Cyrus West Field
・ Cyrus Willard
・ Cyrus William Beales
・ Cyrus Woodman
・ Cyrus Woods
・ Cyrus's edict
・ Cyrus, Minnesota
・ Cyrus, West Virginia
・ Cyrus-class post ship
・ CyrusOne
Cyrus–Beck algorithm
・ Cyruĺnia Svietu
・ Cyrville
・ Cyrville Station
・ Cyryl Klimowicz
・ Cyryl Ratajski
・ Cyryx College
・ CYS
・ Cys Cache
・ Cys Kurland
・ Cys-la-Commune
・ Cys-loop receptors
・ Cys/Met metabolism PLP-dependent enzyme family
・ Cysatus (crater)
・ Cyscon


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Cyrus–Beck algorithm : ウィキペディア英語版
Cyrus–Beck algorithm
The Cyrus–Beck algorithm is a generalized line clipping algorithm. It was designed to be more efficient than the Sutherland–Cohen algorithm which uses repetitive clipping.〔("Clipping" (presentation) )〕 Cyrus–Beck is a general algorithm and can be used with a convex polygon clipping window unlike Sutherland-Cohen that can be used only on a rectangular clipping area.
Here the parametric equation of a line in the view plane is:

\begin
p(t) &=& tp_1 + (1-t)p_0\\
&=& p_0 + t(p_1-p_0)
\end

where 0 \leq t \leq 1 .
Now to find intersection point with the clipping window we calculate value of dot product. Let ''p''''E'' be a point on the clipping plane ''E''.
Calculate n\cdot (p(t)-p_E).
:: if > 0 vector pointed towards interior
:: if = 0 vector pointed parallel to plane containing ''p''
:: if < 0 vector pointed away from interior
Here ''n'' stands for normal of the current clipping plane (pointed away from interior).
By this we select the point of intersection of line and clipping window where (dot product = 0 ) and hence clip the line.
==Notes==

1] Sutherland-Cohen can be used only on a rectangular clipping area.
2] Cyrus–Beck is a general algorithm and can be used with a convex polygon clipping window.
p(t) = p0 + t(p1-p0) /
* it's parametric function
*/
3] if > 0 ; vector says p(t) is OUTSIDE && A < 90 degree.
if < 0 ; vector says p(t) is INSIDE && a > 90 degree.
if = 0 ; vector says p(t) is on edge E .. here outer normal edge is perpendicular to the E and p(t)-B
.. we will writing here a function code for it as given below :
/
*

if( DtProd (N,P(t)-B) > 0)

else if( DtProd (N,P(t)-B) < 0)

else( DtProd (N,P(t)-B) = 0)


*/

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Cyrus–Beck algorithm」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.